package com.xingfudazi.app.domain;

import java.time.LocalDateTime;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xingfudazi.common.annotation.Excel;
import lombok.Data;

/**
 * 会员对象 app_member
 *
 * @author ruoyi
 * @date 2024-06-21
 */
@Data
public class AppMember {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 归属aid
     */
    @Excel(name = "归属aid")
    private Long aid;

    /**
     * 会员编码
     */
    @Excel(name = "会员编码")
    private String code;

    /**
     * 昵称
     */
    @Excel(name = "昵称")
    private String nickName;

    private String phone;

    /**
     * 类型，会员、红娘、教练
     */
    @Excel(name = "类型，会员、红娘、教练")
    private String type;

    /**
     * vip类型
     */
    @Excel(name = "vip类型")
    private String vip;

    /**
     * 等级
     */
    @Excel(name = "等级")
    private Integer ranks;

    /**
     * 会员截止日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "会员截止日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date vipExpireTime;

    /**
     * 会员开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "会员开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date vipStartTime;

    /**
     * 经验值
     */
    @Excel(name = "经验值")
    private Integer experience;

    /**
     * 虚拟货币
     */
    @Excel(name = "虚拟货币")
    private Integer gc;

    /**
     * 关注数量
     */
    @Excel(name = "关注数量")
    private Integer followNum;

    /**
     * 删除标志
     */
    @TableField(fill = FieldFill.INSERT, value = "del_flag")
    private String delFlag;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT, value = "create_time")
    private LocalDateTime createTime;


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE, value = "update_time")
    private LocalDateTime updateTime;

}
